Data center has been widely used as a service platform to provide application service and management service. Currently, how to effectively reduce power consumption in a data center to provide a data center with high power-efficiency has become the focus in discussion.
Most existing data centers have employed host (server) virtualization technology to improve the power-efficiency of the host. Specifically, a plurality of virtual machines are created and managed on one physical host, and these virtual machines can share physical resources and run in parallel on the same physical host. These virtual machines are managed by a virtual machine manager which is located in virtualization layer and partitions the virtual machines and manages the share of CPU, memory and I/O devices. Each virtual machine runs respective workload based on request. The virtual machine manager can regulate resource provision to each virtual machine based on requirements of applications. Therefore, with the virtualization technology, power consumption can be reduced and power-efficiency of the data center can be regulated.
In general, methods for power-efficiency management in a virtualized architecture may comprise: host power on/off, dynamic voltage scaling (DVS) of CPU, virtual machine migration, and dynamic voltage and frequency scaling (DVFS), etc.
However, the current virtualization based power-efficiency management method could not increase power-efficiency or reduce power consumption to the maximum extent while meeting quality of service (QoS) requirements. There exist some applications with workload fluctuating dramatically and frequently. With only virtual machine migration based power-efficiency management method, dramatic workload fluctuations cause frequent migration of virtual machine. Thus, firstly, the power-efficiency management method cannot respond to fluctuations of workload quickly, since the migration of the virtual machine will take some time, but the fluctuation of workload is much faster than the migration of the virtual machine; secondly, the migration of the virtual machine is also an energy consumption operation, the frequent migration of the virtual machine will also increase power consumption.
On the other hand, since different virtual machines serve different workloads, their demands on hardware resources are different. In this case, when the demands of virtual machines on the same hardware resource are different, conflict in resource allocation will arise. This conflict could be solved by the virtual machine manager, but, since the virtual machine manager could not sense flow characteristics such as resource demand, variation trend etc that will affect the resource allocation, the virtual machine manager can not provide optimal decision on resource allocation, and also do not know the impact of these decisions on performance change of the virtual machine, so the optimal power-efficiency management could not be achieved.